enum main_command_type{
	C_VOID,
	C_SHUTDOWN,
	C_CONFIG_GET,
	C_CONFIG_SET,

};

struct main_command_fifo{
	enum main_command_type type;
	union main_command *next;
};

struct main_command_shutdown{
	enum main_command_type type;
	union main_command *next;
};

struct main_command_config_get{
	enum main_command_type type;
	union main_command *next;
	char *key;
	char **value;
};

struct main_command_config_set{
	enum main_command_type type;
	union main_command *next;
	char *key;
	char *value;
};

typedef union main_command{
	enum main_command_type type;
	struct main_command_fifo fifo;
	
	struct main_command_shutdown shutdown;
	struct main_command_config_get config_get;
	struct main_command_config_set config_set;
	
}main_command_u;